home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / graphic / frasr182.zip / PROTOTYP.H < prev    next >
C/C++ Source or Header  |  1993-08-18  |  34KB  |  980 lines

  1. /* includes needed to define the prototypes */
  2.  
  3. #include <stdio.h>
  4. #include "mpmath.h"
  5. #include "port.h"
  6. #include "fractint.h"
  7. #include "helpcom.h"
  8.  
  9. /*  calcmand -- assembler file prototypes */
  10.  
  11. extern int cdecl calcmandasm();
  12.  
  13. /*  calmanfp -- assembler file prototypes */
  14.  
  15. extern void cdecl calcmandfpasmstart();
  16. extern int  cdecl calcmandfpasm();
  17.  
  18. /*  fpu087 -- assembler file prototypes */
  19.  
  20. extern void cdecl FPUcplxmul(_CMPLX *, _CMPLX *, _CMPLX *);
  21. extern void cdecl FPUcplxdiv(_CMPLX *, _CMPLX *, _CMPLX *);
  22. extern void cdecl FPUsincos(double *, double *, double *);
  23. extern void cdecl FPUsinhcosh(double *, double *, double *);
  24. extern void cdecl FPUcplxlog(_CMPLX *, _CMPLX *);
  25. extern void cdecl SinCos086(long , long *, long *);
  26. extern void cdecl SinhCosh086(long , long *, long *);
  27. extern long far cdecl r16Mul(long , long );
  28. extern long far cdecl RegFloat2Fg(long , int );
  29. extern long cdecl Exp086(long);
  30. extern unsigned long far cdecl ExpFudged(long , int );
  31. extern long far cdecl RegDivFloat(long , long );
  32. extern long far cdecl LogFudged(unsigned long , int );
  33. extern long far cdecl LogFloat14(unsigned long );
  34. #ifndef XFRACT
  35. extern long far cdecl RegFg2Float(long, char);
  36. extern long far cdecl RegSftFloat(long, char);
  37. #else
  38. extern long far cdecl RegFg2Float(long , int );
  39. extern long far cdecl RegSftFloat(long , int );
  40. #endif
  41.  
  42. /*  fpu387 -- assembler file prototypes */
  43.  
  44. extern void cdecl FPUaptan387(double *, double *, double *);
  45. extern void cdecl FPUcplxexp387(_CMPLX *, _CMPLX *);
  46.  
  47. /*  fracsuba -- assembler file prototypes */
  48.  
  49. extern int cdecl  longbailout( void );
  50. extern int FManOWarfpFractal( void );
  51. extern int FJuliafpFractal( void );
  52. extern int FBarnsley1FPFractal( void );
  53. extern int FBarnsley2FPFractal( void );
  54. extern int FLambdaFPFractal( void );
  55.  
  56. /*  general -- assembler file prototypes */
  57.  
  58. extern  long   cdecl multiply(long, long, int);
  59. extern  long   cdecl divide(long, long, int);
  60. extern  int    cdecl getakey(void);
  61. extern  void   cdecl buzzer(int);
  62. extern  void   cdecl farmemfree(VOIDFARPTR );
  63. extern  int    cdecl far_strlen( char far *);
  64. extern  int    cdecl far_strnicmp(char far *, char far *,int);
  65. extern  void   cdecl far_strcpy( char far *, char far *);
  66. extern  int    cdecl far_strcmp( char far *, char far *);
  67. extern  void   cdecl far_stricmp(char far *, char far *);
  68. extern  void   cdecl far_strcat( char far *, char far *);
  69. extern  void   cdecl far_memset( VOIDFARPTR , int      , int);
  70. extern  void   cdecl far_memcpy( VOIDFARPTR , VOIDFARPTR , int);
  71. extern  int    cdecl far_memcmp( VOIDFARPTR , VOIDFARPTR , int);
  72. extern  void   cdecl far_memicmp(VOIDFARPTR , VOIDFARPTR , int);
  73. extern  void   cdecl emmdeallocate(unsigned int);
  74. extern  void   cdecl emmgetpage(unsigned int, unsigned int);
  75. extern  void   cdecl emmclearpage(unsigned int, unsigned int);
  76. extern  int    cdecl keypressed(void);
  77. extern  long   cdecl readticker( void );
  78. extern  void   cdecl emmdeallocate(unsigned int);
  79. extern  void   cdecl xmmdeallocate(unsigned int);
  80. extern  void   cdecl snd( int );
  81. extern  void   cdecl nosnd( void );
  82. extern  void   cdecl initasmvars( void );
  83.  
  84. #ifndef __BORLANDC__
  85. extern  void   cdecl enable( void );
  86. extern  void   cdecl disable( void );
  87. extern  void   cdecl delay( int );
  88. #endif
  89.  
  90. extern  int    cdecl farread(int, VOIDFARPTR, unsigned);
  91. extern  int    cdecl farwrite(int, VOIDFARPTR, unsigned);
  92. extern  long   cdecl normalize(char far *);
  93. extern  unsigned int cdecl xmmmoveextended(struct XMM_Move *);
  94. extern  void   cdecl erasesegment(int, int);
  95. extern  int    cdecl IITCoPro( void );
  96. extern  int    cdecl F4x4Check( void );
  97. extern  int    cdecl F4x4Lock( void );
  98. extern  void   cdecl F4x4Free( void );
  99. extern  int    cdecl getakeynohelp( void );
  100. extern  unsigned int cdecl cmpextra( unsigned int, char *, int );
  101. extern  unsigned int cdecl fromextra( unsigned int, char *, int );
  102. extern  unsigned int cdecl toextra( unsigned int, char *, int );
  103. extern  void   cdecl load_mat(double (*)[4]);
  104. extern  VOIDFARPTR cdecl farmemalloc(long);
  105. extern  unsigned int *cdecl xmmquery(void);
  106. extern  BYTE far *cdecl emmquery(void);
  107. extern  unsigned int cdecl emmgetfree(void);
  108. extern  unsigned int cdecl emmallocate(unsigned int);
  109. extern  unsigned int cdecl emmallocate(unsigned int);
  110. extern  unsigned int cdecl xmmallocate(unsigned int);
  111. extern  void   mult_vec_iit(VECTOR);
  112.  
  113. /*  lsysa -- assembler file prototypes */
  114.  
  115. extern void lsys_doplus(long);
  116. extern void lsys_doplus_pow2(long);
  117. extern void lsys_dominus(long);
  118. extern void lsys_dominus_pow2(long);
  119. extern void lsys_dopipe_pow2(long);
  120. extern void lsys_dobang(long);
  121.  
  122. #ifndef XFRACT
  123. extern void lsys_doslash_386(long);
  124. extern void lsys_dobslash_386(long);
  125. extern void lsys_doat_386(long);
  126. extern void lsys_dosizegf_386(long);
  127. extern void lsys_dodrawg_386(long);
  128. #endif
  129.  
  130. /*  mpmath_a -- assembler file prototypes */
  131.  
  132. extern struct MP * MPmul086(struct MP , struct MP );
  133. extern struct MP * MPdiv086(struct MP , struct MP );
  134. extern struct MP * MPadd086(struct MP , struct MP );
  135. extern int         MPcmp086(struct MP , struct MP );
  136. extern struct MP * d2MP086(double );
  137. extern double    * MP2d086(struct MP );
  138. extern struct MP * fg2MP086(long , int );
  139. extern struct MP * MPmul386(struct MP , struct MP );
  140. extern struct MP * MPdiv386(struct MP , struct MP );
  141. extern struct MP * MPadd386(struct MP , struct MP );
  142. extern int         MPcmp386(struct MP , struct MP );
  143. extern struct MP * d2MP386(double );
  144. extern double    * MP2d386(struct MP );
  145. extern struct MP * fg2MP386(long , int );
  146. extern double *    MP2d(struct MP );
  147. extern int         MPcmp(struct MP , struct MP );
  148. extern struct MP * MPmul(struct MP , struct MP );
  149. extern struct MP * MPadd(struct MP , struct MP );
  150. extern struct MP * MPdiv(struct MP , struct MP );
  151. extern struct MP * d2MP(double );  /* Convert double to type MP */
  152. extern struct MP * fg2MP(long , int ); /* Convert fudged to type MP */
  153.  
  154. /*  newton -- assembler file prototypes */
  155.  
  156. extern int cdecl    NewtonFractal2( void );
  157. extern void cdecl   invertz2(_CMPLX *);
  158.  
  159. /*  tplus_a -- assembler file prototypes */
  160.  
  161. extern void WriteTPlusBankedPixel(int, int, unsigned long);
  162. extern unsigned long ReadTPlusBankedPixel(int, int);
  163.  
  164. /*  video -- assembler file prototypes */
  165.  
  166. extern void   cdecl adapter_detect(void);
  167. extern void   cdecl clearbox(void);
  168. extern void   cdecl dispbox(void);
  169. extern void   cdecl setvideotext(void);
  170. extern void   cdecl setnullvideo(void);
  171. extern void   cdecl setfortext(void);
  172. extern void   cdecl setforgraphics(void);
  173. extern void   cdecl swapnormwrite(void);
  174. extern void   cdecl setclear(void);
  175. extern int    cdecl SetupShadowVideo(void);
  176. extern int    cdecl ShadowVideo(int);
  177. extern int    cdecl keycursor(int,int);
  178. extern void   cdecl swapnormread(void);
  179. extern void   cdecl setvideomode(int, int, int, int);
  180. extern void   cdecl movewords(int,BYTE far*,BYTE far*);
  181. extern void   cdecl movecursor(int, int);
  182. extern void   cdecl get_line(int, int, int, BYTE *);
  183. extern void   cdecl put_line(int, int, int, BYTE *);
  184. extern void   cdecl setattr(int, int, int, int);
  185. extern void   cdecl putstring(int,int,int,CHAR far *);
  186. extern void   cdecl spindac(int, int);
  187. extern void   cdecl find_special_colors(void);
  188. extern char   cdecl get_a_char(void);
  189. extern void   cdecl put_a_char(int);
  190. extern void   cdecl scrollup(int, int);
  191. extern void   cdecl home(void);
  192. extern BYTE far *cdecl  findfont(int);
  193. extern int _fastcall getcolor(int, int);
  194. extern void _fastcall putcolor(int, int, int);
  195. extern int  out_line(BYTE *, int);
  196. extern void   (*swapsetup)(void);
  197.  
  198. /*  3d -- C file prototypes */
  199.  
  200. extern void identity(MATRIX);
  201. extern void mat_mul(MATRIX,MATRIX,MATRIX);
  202. extern void scale(double ,double ,double ,MATRIX);
  203. extern void xrot(double ,MATRIX);
  204. extern void yrot(double ,MATRIX);
  205. extern void zrot(double ,MATRIX);
  206. extern void trans(double ,double ,double ,MATRIX);
  207. extern int cross_product(VECTOR,VECTOR,VECTOR);
  208. extern int normalize_vector(VECTOR);
  209. extern int vmult(VECTOR,MATRIX,VECTOR);
  210. extern void mult_vec_c(VECTOR);
  211. extern int perspective(VEC